import java.util.Scanner;
/*任意一个偶数（大于2）都可以由2个素数组成，组成偶数的2个素数有很多种情况，本题目要求输出组成指定偶数的两个素数差值最小的素数对。

        数据范围：输入的数据满足 4≤n≤1000*/
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        while (in.hasNext()) {
            int n = in.nextInt();
            int half = n/2; //从中间向两一侧遍历 遇到的第一个素数并且n-i也为素数的情况，则打印，跳出循环
            for (int i = half; i <= n;i++) {
                if (isPrime(i) && isPrime(n-i)) {
                    System.out.println(n-i);
                    System.out.println(i);
                    break;
                }
            }
        }
    }
    public static boolean isPrime(int n) {
        for (int i = 2; i*i <= n;i++) {
            if (n % i == 0) {
                return false;
            }
        }
        return true;
    }
}